package cn.star.jots.tag.service.impl;

import cn.star.jots.tag.mapper.FilmTagMapper;

import cn.star.jots.tag.pojo.dto.FilmTagQuery;
import cn.star.jots.tag.pojo.dto.TagSaveParam;
import cn.star.jots.tag.pojo.entity.FilmTag;
import cn.star.jots.tag.pojo.vo.FilmTagVO;
import cn.star.jots.tag.service.FIlmTagService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.Date;
import java.util.List;

@Service
@Slf4j
public class FilmTagServiceImpl implements FIlmTagService {

    @Autowired
    FilmTagMapper filmTagMapper;

    @Override
    public List<FilmTagVO> selectAll(Long id) {
        log.debug("查询电影标签,id参数:{}", id);
        return filmTagMapper.selectAll(id);
    }

    @Override
    public void save(TagSaveParam tagSaveParam) {
        log.debug("保存电影标签,参数:{}", tagSaveParam);
        FilmTag filmTag = new FilmTag();
        BeanUtils.copyProperties(tagSaveParam, filmTag);
        filmTag.setCreateTime(new Date());
        filmTagMapper.insert(filmTag);
    }


    @Override
    public void update(TagSaveParam tagSaveParam) {
        log.debug("更新电影标签,参数:{}", tagSaveParam);
        FilmTag filmTag = new FilmTag();
        filmTag.setId(tagSaveParam.getId());
        filmTag.setTag(tagSaveParam.getTag());
        filmTag.setUpdateTime(new Date());
        filmTagMapper.update(filmTag);
    }

    @Override
    public void delete(Long id) {
        log.debug("删除电影标签,参数:{}", id);
        filmTagMapper.delete(id);
    }

}
